package com.greensam.pixelengine.service;

import com.greensam.pixelengine.pojo.base.PaginationResponse;
import com.greensam.pixelengine.pojo.entity.PicturePo;
import com.greensam.pixelengine.pojo.query.PicturePageQuery;
import jakarta.validation.constraints.NotNull;

import java.util.List;
import java.util.Optional;

/**
 * @author Macro_Ray
 * @since 2025/7/2 15:37
 */
public interface PictureDataService {

    Optional<PicturePo> getPictureById(Long pictureId);

    PicturePo save(PicturePo picturePo);

    PaginationResponse<PicturePo> pagePicture(PicturePageQuery pageQuery);

    String getPictureVoCache(String key);

    void savePictureVoCache(String key, String cacheValue);

    List<PicturePo> listPicture(Long spaceId, Boolean isPublic);
}
